package io.renren.modules.generator.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 
 * 
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2018-12-03 15:03:04
 */
@TableName("product")
@Data
public class ProductEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 序号
	 */
	@TableId
	private Integer id;
	/**
	 * 产品编码
	 */
	private String productNumber;
	/**
	 * 产品中文名称
	 */
	private String productCnName;
	/**
	 * 产品英文名称
	 */
	private String productEnName;
	/**
	 * 是否LTO
	 */
	private String lto;
	/**
	 * 温度
	 */
	private Integer temperatureRangeDictionaryId;

	@TableField(exist = false)
	private String temperatureRangeName;

	@TableField(exist = false)
	private String temperatureRangeCode;

	@TableField(exist = false)
	private String measurementUnitName;

	private Double measurementUnitNumber=null;

	private Integer measurementUnitDictionaryId;

	/**
	 * 净重
	 */
	private Double netWeight;
	/**
	 * 毛重
	 */
	private Double grossWeight;
	/**
	 * 重量单位
	 */
	private String weightUom;
	/**
	 * 高度
	 */
	private Double caseHeight;
	/**
	 * 长度
	 */
	private Double caseLength;
	/**
	 * 宽度
	 */
	private Double caseWidth;
	/**
	 * 单位
	 */
	private String dimensionUom;
	/**
	 * 类型
	 */
	private Integer defaultMeasurementUnitDictionaryId;
	@TableField(exist = false)
	private String defaultMeasurementUnitName;

	private double defaultMeasurementUnitNumber;

	/**
	 * 货品分类
	 */
	private Integer productTypeDictionaryId;
	@TableField(exist = false)
	private String productType;
	/**
	 * 货品性质
	 */
	private Integer productNatureDictionaryId;
	@TableField(exist = false)
	private String productNature;

	/**
	 * 单价
	 */
	private Double price;

	/**
	 * 货值
	 */
	private String productValue;

	/**
	 * 体积
	 */
	private double volume;
	/**
	 * 体积单位
	 */
	private String volumeUom;


	/**
	 * 
	 */
	private String extendFirst;
	/**
	 * 
	 */
	private String extendSecond;
	/**
	 * 供应商code
	 */
	private Integer customerId;

	@TableField(exist = false)
	private String customerCnName;
	@TableField(exist = false)
	private String customerCode;
	@TableField(exist = false)
	private List<AddressProductEntity> addressProducts = new ArrayList<>();
/*	@TableField(exist = false)
	private List<AddressEntity> fromAddressEntities = new ArrayList<>();
	@TableField(exist = false)
	private List<AddressEntity> toAddressEntities = new ArrayList<>();*/



	/**
	 * 备注
	 */
	private String remark;

	/**
	 * 设置：序号
	 */
	public void setId(Integer id) {
		this.id = id;
	}
	/**
	 * 获取：序号
	 */
	public Integer getId() {
		return id;
	}
	/**
	 * 设置：产品编码
	 */
	public void setProductNumber(String productNumber) {
		this.productNumber = productNumber;
	}
	/**
	 * 获取：产品编码
	 */
	public String getProductNumber() {
		return productNumber;
	}
	/**
	 * 设置：产品中文名称
	 */
	public void setProductCnName(String productCnName) {
		this.productCnName = productCnName;
	}
	/**
	 * 获取：产品中文名称
	 */
	public String getProductCnName() {
		return productCnName;
	}
	/**
	 * 设置：产品英文名称
	 */
	public void setProductEnName(String productEnName) {
		this.productEnName = productEnName;
	}
	/**
	 * 获取：产品英文名称
	 */
	public String getProductEnName() {
		return productEnName;
	}
	/**
	 * 设置：是否LTO
	 */
	public void setLto(String lto) {
		this.lto = lto;
	}
	/**
	 * 获取：是否LTO
	 */
	public String getLto() {
		return lto;
	}
	/**
	 * 设置：温度
	 */
	public void setTemperatureRangeDictionaryId(Integer temperatureRangeDictionaryId) {
		this.temperatureRangeDictionaryId = temperatureRangeDictionaryId;
	}
	/**
	 * 获取：温度
	 */
	public Integer getTemperatureRangeDictionaryId() {
		return temperatureRangeDictionaryId;
	}
	/**
	 * 设置：净重
	 */
	public void setNetWeight(Double netWeight) {
		this.netWeight = netWeight;
	}
	/**
	 * 获取：净重
	 */
	public Double getNetWeight() {
		return netWeight;
	}
	/**
	 * 设置：毛重
	 */
	public void setGrossWeight(Double grossWeight) {
		this.grossWeight = grossWeight;
	}
	/**
	 * 获取：毛重
	 */
	public Double getGrossWeight() {
		return grossWeight;
	}
	/**
	 * 设置：重量单位
	 */
	public void setWeightUom(String weightUom) {
		this.weightUom = weightUom;
	}
	/**
	 * 获取：重量单位
	 */
	public String getWeightUom() {
		return weightUom;
	}
	/**
	 * 设置：高度
	 */
	public void setCaseHeight(Double caseHeight) {
		this.caseHeight = caseHeight;
	}
	/**
	 * 获取：高度
	 */
	public Double getCaseHeight() {
		return caseHeight;
	}
	/**
	 * 设置：长度
	 */
	public void setCaseLength(Double caseLength) {
		this.caseLength = caseLength;
	}
	/**
	 * 获取：长度
	 */
	public Double getCaseLength() {
		return caseLength;
	}
	/**
	 * 设置：宽度
	 */
	public void setCaseWidth(Double caseWidth) {
		this.caseWidth = caseWidth;
	}
	/**
	 * 获取：宽度
	 */
	public Double getCaseWidth() {
		return caseWidth;
	}
	/**
	 * 设置：单位
	 */
	public void setDimensionUom(String dimensionUom) {
		this.dimensionUom = dimensionUom;
	}
	/**
	 * 获取：单位
	 */
	public String getDimensionUom() {
		return dimensionUom;
	}
	/**
	 * 设置：类型
	 */
	public void setDefaultMeasurementUnitDictionaryId(Integer defaultMeasurementUnitDictionaryId) {
		this.defaultMeasurementUnitDictionaryId = defaultMeasurementUnitDictionaryId;
	}
	/**
	 * 获取：类型
	 */
	public Integer getDefaultMeasurementUnitDictionaryId() {
		return defaultMeasurementUnitDictionaryId;
	}
	/**
	 * 设置：
	 */
	public void setExtendFirst(String extendFirst) {
		this.extendFirst = extendFirst;
	}
	/**
	 * 获取：
	 */
	public String getExtendFirst() {
		return extendFirst;
	}
	/**
	 * 设置：
	 */
	public void setExtendSecond(String extendSecond) {
		this.extendSecond = extendSecond;
	}
	/**
	 * 获取：
	 */
	public String getExtendSecond() {
		return extendSecond;
	}
	/**
	 * 设置：供应商code
	 */
	public void setCustomerId(Integer customerId) {
		this.customerId = customerId;
	}
	/**
	 * 获取：供应商code
	 */
	public Integer getCustomerId() {
		return customerId;
	}
	/**
	 * 设置：备注
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}
	/**
	 * 获取：备注
	 */
	public String getRemark() {
		return remark;
	}
}
